package bomberman.modelo.observadores;

import java.io.IOException;

import bomberman.modelo.Partida;
import bomberman.modelo.items.BombaToleTole;
import bomberman.vista.Dimensionador;
import bomberman.vista.items.VistaBombaToleTole;

public class ObservadorBombaToleTole implements IObservador {
  
  private Partida partida;
  
  public ObservadorBombaToleTole(Partida partida) {
    this.partida = partida;
  }
  
  @Override
  public void actualizar(Object arg) {
    if (!(this.partida.getGameLoop().getObjetosDibujables().contains(this.partida.getTraductor().get(arg)))) {
      try {
        this.partida.agregarVista(arg, new VistaBombaToleTole(new Dimensionador((BombaToleTole) arg)));
      } catch (IOException e) {
        e.printStackTrace();
      }
    } else {
      if (this.partida.getNivelActual().getBombita().contieneItem((BombaToleTole) arg)) {
        this.partida.retirarVista(arg);
        this.partida.agregarObjetoVivo(arg);
      }
    }
  }
}
